1. Field of the Invention
The present invention applies to the field of digital communications systems and, in particular, to flexible bit-rate encoding systems for multi-ary modulation systems.
2. Description of the Prior Art
Presently in transmitting and receiving digital data across noisy channels, it is difficult to find a suitable compromise between adequate bandwidth efficiency and adequate recoverability of the transmitted signal. With high date rates, a signal may not accurately be received, demodulated and recovered. With more modest data rates, the efficiency of the system is reduced. In order to provide a robust communications link, the data rate must be limited. However, in a changing channel, this limit will also change, so that a system that accommodates only a single data rate can not always employ the optimal data rate under the circumstances.
In some systems, it is possible to vary the bit rate, or symbol rate of signal transmissions, however this often complicates the hardware and software required to implement the system. Other systems permit the modulation scheme to be changed but at still greater cost. The present invention allows the transmitted bit rate to be changed as the quality of the channel changes without significantly complicating the hardware and software. This provides a better combination of error correction coding for the available channel. It is suitable for any kind of digital communications but is particularly suitable for wireless low mobility digital data communications systems.
In one embodiment, the invention comprises demultiplexing a bit stream into a first block and a second block, convolutionally coding the first block and block coding the second block. The invention further comprises applying the block coded second block to a function module to apply one of a plurality of different functions to form a third block at an output of the module and mapping the convolutionally coded first block and the third block to a modulation constellation for transmission, the mapping resulting in different constellation points depending on the applied function.